
package grafo;

import java.util.ArrayList;

/**
 * @author Alexandre
 * @author Lucas
 * Cada tabela, vai ser um linha da tabela de djikstra
 */
public class Tabela {

    public ArrayList<Integer> caminho;//Lista de nós percorridos
    public ArrayList<Node> listaNode;//Cada Node vai ter o custo e o id do último nó que passou

    public Tabela() {
        this.caminho = new ArrayList<>();
        this.listaNode = new ArrayList<>();
        for (int i = 0; i < Grafo.Vertices.size(); i++) {
            listaNode.add(new Node(-1,-1));
        }
    }

    public void showCaminho(){
        System.out.print("Caminho ");
        for (Integer caminho1 : caminho) {
            System.out.print(caminho1 + ", ");
        }
        System.out.println("");
    }
    
    public int getMenor() {
        double min = Integer.MAX_VALUE;
        int id = -1;
        for (int i=0; i<listaNode.size();i++) {
            if (listaNode.get(i).custo < min && listaNode.get(i).custo > 0) {
                min = listaNode.get(i).custo;
                id = i;
            }
        }
        return id;
    }

}
